//package cn.nfwx.tv.manager;
//
//import android.app.Activity;
//import android.content.Context;
//import android.util.Log;
//import android.widget.Toast;
//
//import org.greenrobot.eventbus.EventBus;
//
//import java.util.ArrayList;
//import java.util.Iterator;
//import java.util.List;
//import cn.nfwx.tv.base.NFWXApplication;
//import cn.nfwx.tv.conts.Constants;
//import cn.nfwx.tv.events.DownLoadStatusChangeEvent;
//import cn.nfwx.tv.model.WatchRecordModel;
//import cn.nfwx.tv.util.NetworkUtil;
//import cn.nfwx.tv.util.SharePrefUtil;
//import p2psvideo.Interfaces;
//import p2psvideo.P2PSMediaPlayer;
//import p2psvideo.P2PSMgr;
//
///**
// * Created by dell on 2017/11/22.
// */
//
//public class DownLoadManager {
//
//    /***
//     * 获取所有下载列表，第三方库已经写好的下载方法
//     * @param activity
//     * @return
//     */
//    public  static List<P2PSMgr.P2PSFileInfo> getDownLoadList(Activity activity){
//        P2PSMgr p2PSMgr=NFWXApplication.getInstance().getP2PSMgr();
//        p2PSMgr.setMaxDownload(2);
//        List<P2PSMgr.P2PSFileInfo> files = new ArrayList<>();
//        try {
//            p2PSMgr.getFiles(files);
//        }catch (Exception e){
//            e.printStackTrace();
//        }
//        Iterator<P2PSMgr.P2PSFileInfo> it = files.iterator();
//        while(it.hasNext()){
//            P2PSMgr.P2PSFileInfo x = it.next();
//            if(x.downloadPolicy==0){
//                it.remove();
//            }
//        }
//        return files;
//    }
//
//    public  static List<P2PSMgr.P2PSFileInfo> getDownLoadList(){
//        P2PSMgr p2PSMgr=NFWXApplication.getInstance().getP2PSMgr();
//        p2PSMgr.setMaxDownload(2);
//        List<P2PSMgr.P2PSFileInfo> files = new ArrayList<>();
//        try {
//            p2PSMgr.getFiles(files);
//        }catch (Exception e){
//            e.printStackTrace();
//        }
//        Iterator<P2PSMgr.P2PSFileInfo> it = files.iterator();
//        while(it.hasNext()){
//            P2PSMgr.P2PSFileInfo x = it.next();
//            if(x.downloadPolicy==0){
//                it.remove();
//            }
//        }
//        return files;
//    }
//
//
//    /***
//     * 从下载列表筛选出进度不等于100的，也就是下载中的下载列表
//     * @param activity
//     * @return
//     */
//    public static List<P2PSMgr.P2PSFileInfo>   getDownLoadingList(Activity activity){
//        List<P2PSMgr.P2PSFileInfo> files = new ArrayList<>();
//
//        for(P2PSMgr.P2PSFileInfo fileInfo:getDownLoadList(activity)){
//            if(fileInfo.percent!=100){
//                files.add(fileInfo);
//            }
//        }
//
//        return files;
//    }
//    /***
//     * 从下载列表筛选出进度等于100的，也就是下载完成的列表
//     * @param activity
//     * @return
//     */
//    public static    List<P2PSMgr.P2PSFileInfo> getDownLoadedList(Activity activity){
//        List<P2PSMgr.P2PSFileInfo> files = new ArrayList<>();
//        for(P2PSMgr.P2PSFileInfo fileInfo:getDownLoadList(activity)){
//            if(fileInfo.percent==100){
//                files.add(fileInfo);
//            }
//        }
//        return files;
//    }
//
//    /***
//     * 创建下载
//     * @param activity
//     * @param url
//     * @param onFileDownloadCreatedListener
//     * @param onFileDownloadFailedListener
//     */
//    public static void download( Activity activity, String url, Interfaces.OnFileDownloadCreatedListener onFileDownloadCreatedListener , Interfaces.OnFileDownloadFailedListener onFileDownloadFailedListener){
//        NFWXApplication app=(NFWXApplication)activity.getApplication();
//        P2PSMgr p2PSMgr=app.getP2PSMgr();
//        String streamers = "rtmfp://www.southtv.live:9035";
//        String opts = "{\"buffer_length\": 30000, \"referer\": \"" + "http://www.southtv.live:9083" + "\", \"video_codecs\": \"" + P2PSMediaPlayer.getSupportedVideoCodecList(true) + "\"}";
//        p2PSMgr.createDownload(Constants.base_video_url+url+"=.json?type=vod", streamers, opts, P2PSMgr.DOWNLOAD_TYPE_NORMAL, 0,onFileDownloadCreatedListener,onFileDownloadFailedListener);
//
//        // 新增一个下载
//        EventBus.getDefault().post(new DownLoadStatusChangeEvent(DownLoadStatusChangeEvent.DOWNLOAD_STATUS_CREATED,""));
//    }
//
//    /***
//     * 删除下载或者是下载完成的
//     * @param activity
//     * @param vsid
//     */
//    public static void deleteDownLoad(Activity activity,String vsid){
//        P2PSMgr p2PSMgr=NFWXApplication.getInstance().getP2PSMgr();
//        p2PSMgr.setDownloadType(vsid,P2PSMgr.DOWNLOAD_TYPE_NONE,true);
//        p2PSMgr.removeFileByID(vsid);
//
//        // 删除一个下载
//        EventBus.getDefault().post(new DownLoadStatusChangeEvent(DownLoadStatusChangeEvent.DOWNLOAD_STATUS_DELETE,vsid));
//    }
//
//    /***
//     * 暂停某个下载
//     * @param activity
//     * @param vsid
//     */
//    public static void pauseDownLoad(Activity activity,String vsid){
//        P2PSMgr p2PSMgr=NFWXApplication.getInstance().getP2PSMgr();
//        p2PSMgr.setDownloadType(vsid,P2PSMgr.DOWNLOAD_TYPE_PAUSE,false);
//
//    }
//    public static void pauseDownLoad(String vsid){
//        P2PSMgr p2PSMgr=NFWXApplication.getInstance().getP2PSMgr();
//        p2PSMgr.setDownloadType(vsid,P2PSMgr.DOWNLOAD_TYPE_PAUSE,false);
//
//    }
//
//    /***
//     * 获取单个下载文件信息
//     * @param activity
//     * @param vsid
//     * @return
//     */
//    public  static P2PSMgr.P2PSFileInfo getFileInfo(Activity activity,String vsid){
//        P2PSMgr p2PSMgr=NFWXApplication.getInstance().getP2PSMgr();
//        return p2PSMgr.getFileInfo(vsid);
//    }
//    public  static void removeFileInfo(Activity activity,String vsid){
//        P2PSMgr p2PSMgr=NFWXApplication.getInstance().getP2PSMgr();
//        p2PSMgr.removeFileByID(vsid);
//
//    }
//
//    /***
//     * 开始下载
//     * @param activity
//     * @param vsid
//     */
//    public static void startDownLoad(Activity activity,String vsid){
//        P2PSMgr p2PSMgr=NFWXApplication.getInstance().getP2PSMgr();
//        p2PSMgr.setDownloadType(vsid,P2PSMgr.DOWNLOAD_TYPE_NORMAL,false);
//    }
//
//
//
//
//    public static void updateProgress( Interfaces.OnFileDownloadProgressListener onFileDownloadProgressListener){
//        P2PSMgr p2PSMgr=NFWXApplication.getInstance().getP2PSMgr();
//        p2PSMgr.setOnFileDownloadProgressListener(onFileDownloadProgressListener);
//    }
//
//
//    public static String getFileVsid(String path){
//        String vsid="";
//        P2PSMgr p2PSMgr=NFWXApplication.getInstance().getP2PSMgr();
//        List<P2PSMgr.P2PSFileInfo> files = new ArrayList<>();
//        try {
//            p2PSMgr.getFiles(files);
//        }catch (Exception e){
//            e.printStackTrace();
//        }
//        for(P2PSMgr.P2PSFileInfo fileInfo:files){
//            if(fileInfo.urls.contains(path.replace("/query/",""))){
//                vsid=fileInfo.vsid;
//            }
//        }
//        return vsid;
//    }
//
//
//
//
//}
